//Jen Anderson
//CS 362
//Assignment 4
//Randomtestadventurer.c
//Write a random test for adventurer.
// copy code from last assignment about how the setup to test a card

#include <assert.h>
#include "dominion.h"
#include "dominion_helpers.h"
#include "rngs.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//set NOISY_TEST to 1 to remove print output
#define NOISY_TEST 1
//set TEST_REPS to the number of times you want to run the test
#define TEST_REPS 5 

void testAdventurerCard()
{
	srand(time(0));
	//things to test on adventurer
		//make sure it keeps track of drawn treasure
		//make sure it shuffles atthe right time
		//make sure it increases drawn treasure at the right times
		//

	//Initialize the game
        int k[10] = {adventurer, council_room, feast, gardens, mine,remodel, smithy, village, baron, great_hall};
        struct gameState *game = newGame();
        initializeGame(3, k, 10, game);
                
	//Run the test TEST_REPS number of times
	int i = 0;
	int previousHandCount;
	int drawntreasure;
	int currentPlayer;
	int cardDrawn;
	int temphand[MAX_HAND];
	int z;
/*	for(i = 1; i < TEST_REPS; i++)
	{
		//My random values 
	 	drawntreasure = rand() % 21 + 1;  // -10 through positive 10
		currentPlayer = rand() % 21 + 1;
		cardDrawn = rand() % 21 + 1;
		z = rand() % 21 + 1;	                           	
		
		previousHandCount = game->handCount[currentPlayer];
		zzzadventurercardplay(drawntreasure, currentPlayer, cardDrawn, temphand, z, game);
			
		//print out if noisy stating what values successfully were ran with the function.  Way to test combinations
		#if (NOISY_TEST == 1)
			printf("The card was able to run with the following values:\n");
			printf("\tdrawntreasure = %d\n", drawntreasure);
			printf("\tcurrentPlayer = %d\n", currentPlayer);
			printf("\tcardDrawn = %d\n", cardDrawn);
			printf("\tz = %d\n", z);
		#endif
	} 	
}
*/
int main()
{
	testAdventurerCard();
	return 0;
}
